home *** CD-ROM | disk | FTP | other *** search
/ CD ROM Paradise Collection 4 / CD ROM Paradise Collection 4 1995 Nov.iso / program / swaga_c.zip / COLOR.SWG / 0005_Get Palette.pas < prev    next >
Pascal/Delphi Source File  |  1993-05-28  |  1KB  |  36 lines

  1. {
  2. > Is it Possible to find out what the colors are that are
  3. > currently being used? I don't know how else to phrase it, I
  4. > know you can find out the Values of the Various pixels on
  5. > the screen. But how can I find out the Various red, green
  6. > and blue Values that correspond to the specific color?
  7.  
  8. }
  9.  
  10. Procedure ReadPalette(Start,Finish:Byte;P:Pointer);
  11. Var
  12.   I,
  13.   NumColors   :  Word;
  14.   InByte      :  Byte;
  15. begin
  16.   P := Ptr (Seg(P^),Ofs(P^)+Start*3);
  17.   NumColors := (Finish - Start + 1) * 3;
  18.  
  19.   Port [$03C7] := Start;
  20.  
  21.   For I := 0 to NumColors do begin
  22.     InByte := Port [$03C9];
  23.     Mem [Seg(P^):Ofs(P^)+I] := InByte;
  24.     end;
  25.  
  26. end;
  27.  
  28. {
  29. > But, how do I find out exactly what color #200 is? It must
  30. > be held in memory some place. Can anyone supply a Procedure,
  31. > Function or some insight into this?
  32.  
  33.      You would just supply the Start as 200, finish as 200, and Ptr P would
  34. point to your data... You could easily Change this routine to Supply only one
  35. color as Variables if needed.... Hope this helped..
  36. }